package ofertas;

import java.util.ArrayList;
import java.util.List;

import productosYPresentaciones.Producto;

/**
 * Clase que representa una oferta compuesta
 * por varios productos
 * 
 * @author Octavio Nicolas Pompilio
 *
 */
public class OfertaProductos extends Oferta {

	private List<Producto> productos;
	
	/**
	 * Constructor de la oferta de varios productos
	 * @param porcentaje
	 * El porcentaje de descuento de la oferta.
	 * @param productos
	 * Los productos que participaran de la oferta.
	 */
	public OfertaProductos(float porcentaje,List<Producto> productos) {
		super(porcentaje);
		this.productos = productos;
	}
	
	@Override
	protected float calcularPrecio() {
		float precioFinal = 0;
		
		for( Producto prod: this.getListaProductos()){
			precioFinal += prod.precioActual();
		}
			
		return precioFinal;
	}
	
	public List<Producto> getListaProductos(){
		List<Producto> lista = new ArrayList<Producto>();
		lista.addAll(productos);
		
		return lista;
	}
}
